package com.agtuigu.gmall.cart.service;

import com.atguigu.gmall.model.cart.CartInfo;

import java.util.List;

/**
 * 购物车管理service 接口
 * @author : zjj
 * @date : 2021/2/4 10:22
 */
public interface CartService {
    /**
     * 保存购物车
     * @param skuId     skuId
     * @param userId    用户id
     * @param skuNum    数量
     */
    void saveToCart(Long skuId,String userId,Integer skuNum);

    /**
     * 查询购物车列表
     * @param userId        用户Id
     * @param userTempId    临时用户Id
     * @return              购物车列表
     */
    List<CartInfo> getCartList(String userId, String userTempId);

    /**
     * 更新选中状态
     * @param userId        用户Id
     * @param isChecked     是否选中
     * @param skuId         skuId
     */
    void checkCart(String userId,Integer isChecked,Long skuId);

    /**
     * 删除购物车
     * @param skuId     skuId
     * @param userId    用户id
     */
    void deleteCart(Long skuId,String userId);

    /**
     * 根据用户id 获取用户勾选列表
     * @param userId    用户id
     * @return          列表
     */
    List<CartInfo> getCartCheckedList(String userId);
}
